/*
 * watcher.h
 *
 *  Created on: 10-jul-2009
 *      Author: HPK
 */

#ifndef WATCHER_H_
#define WATCHER_H_

#include "point.h"
#include "objects/ground.h"

class Watcher{
	private:
		Point _pos;
		Ground* _ground;

		void limitWatcher();
		void calculateWatcherZ();
	public:
		Watcher(Point pos=Point(0,0,2.0f),Ground* ground=NULL);
		~Watcher();

		void moveWatcherTo(float x,float y);
		void moveWatcher(float dx,float dy);

		Point getWatcherPosition(){
			return _pos;
		}

		void setWatcherPosition(Point pos){ _pos=pos; }

		void ground(Ground* ground){
			_ground = ground;
			limitWatcher();
		}
};

#endif /* WATCHER_H_ */
